package June;
import java.util.Scanner;
public class Test_7_2 {
    public static void main(String[] args) {
        // 要求:实现动态的给数组添加元素效果，实现对数组扩容。
        // 1)原始数组使用静态分配 int[] arr = {1,2.3};
        // 2)增加的元素4，
        // 直接放在数组的最后 arr = {1,2,3,4}
        // 3)用户可以通过如下方法来决定是否继续添加，添加成功，是否继续?y/n
        Scanner myScanner = new Scanner(System.in);
        int[] arr = {1, 2, 3};

        do {
            int[] arrNew = new int[arr.length + 1];

            System.out.print("是否要向数组继续添加数据（y / n）：");
            char input = myScanner.next().charAt(0);
            if (input == 'y') {

                System.out.print("请输入一个数字：");
                int index = myScanner.nextInt();
                //把新输入赋给arrNew最后一个元素
                for (int i = 0; i < arr.length; i++) {
                    arrNew[i] = arr[i];
                }
                arrNew[arrNew.length - 1] = index;
                //让 arr 指向 arrNew
                arr = arrNew;
            } else if (input == 'n') {
                break;
            } else {
                System.out.print("你的输入有误，请输入（y / n）:");
            }
            System.out.println("扩容后的数组：");
            for (int i = 0; i < arr.length; i++) {
                System.out.print(arr[i] + "  ");
            }
            System.out.println();
        } while (true);
        System.out.println("程序结束!");
    }
}
